Course No
رقم المساق
|
Course Name
اسم المساق
|
Credit hours
الساعات المعتمدة
|
Course Description
وصف المساق
|
6423 |
Non-relational Databases |
3 |
This course covers key concepts of non-relational or NoSQL (Not Only SQL) databases and equips students with the necessary knowledge and skills to utilize these powerful alternatives to traditional relational databases. The course combines theoretical concepts, practical examples, and exercises. It covers various types of NoSQL databases, such as document-oriented, key-value, columnar, and graph databases. Students will also learn about notable NoSQL technologies, including MongoDB, Cassandra, Redis, and Neo4j, along with associated tools and frameworks. Furthermore, real-world use cases will be examined to demonstrate the practical applications and benefits of NoSQL databases. Limitations, research problems, and state-of-the-art contributions in the areas of NoSQL and cloud-based data stores are in scope. |
6901 |
Numerical Simulation |
3 |
An introduction to computational techniques for the simulation of a large variety of engineering and physical systems. Topics include: mathematical formulations; network problems; sparse direct and iterative matrix solution techniques; Newton methods for nonlinear problems; discretization methods for ordinary, time-periodic and partial differential equations, fast methods for partial differential and integral equations, techniques for dynamical system model reduction and approaches for molecular dynamics. |
6902 |
Design And Analysis of Algorithms |
3 |
Explore techniques in design and analysis such as recursion, divide and conquer, greedy algorithms, dynamic programming, graph theory, advanced sorting and searching algorithm, advanced topics such as: NP-Completeness, randomized algorithms, approximation algorithms and lower bounds. |
6904 |
Computer Architecture |
3 |
A study of the evolution of computer architecture and the factors influencing the design of hardware and software elements of computer systems. Topics include: instruction set design; processor micro-architecture and pipelining; cache and virtual memory organizations; protection and sharing; in-order and out-of-order superscalar architectures; VLIW machines; vector supercomputers; multithreaded architectures; symmetric multiprocessors; and parallel computers. |
6907 |
Advanced Database Systems |
3 |
This course provides an overview of relational data model and relational database management systems followed by comprehensive coverage of some of the advanced topics related to data and database administration, CASE tools, post-relational database systems and recent developments in the Query optimization, Information retrieval, On-line Analytic Processing (OLAP), XML databases, World Wide Web (WWW). The goal is to expose students to the current active areas in databases of interest to both academia and industry by reading book chapters as well as papers from the recent literature and discussing them in class. Students will be presented with opportunities to do hands-on work with appropriate commercial tools. |
6908 |
Software Engineering for Web Applications |
3 |
Topics include basics of web development environment and designing a dynamic web site with the goal of building a site as the main (group) project. Topics also include Web usability and interface best practices, page and site issues, distributed computing with Web Services and SOAP, human-computer interface and the graphical display of information, web-based presentation. |
6909 |
Object-Oriented Databases |
3 |
Provides the first unified and coherent presentation of the essential concepts and techniques of object-oriented databases. It combines the results of research and development in the semantics and implementation of a full spectrum of database facilities for object-oriented systems, including data model, query, authorization, schema evolution, storage structures, query optimization, transaction management, versions, composite objects, and integration of a programming language and a database system. |
6911 |
Parallel Computing |
3 |
The goal of the course is to introduce students to parallel computing, including both theory and hands-on experience. The topics to be covered include: overview of parallel computing, languages and programming environments; message-passing computing; partitioning and divide-and-conquer strategies; Pipelined computations; Synchronous computations; Load balancing and termination detection; programming with shared memory; algorithms and applications |
6913 |
Operating System Engineering |
3 |
Teaches the fundamentals of engineering operating systems. The following topics are studied in detail: virtual memory, kernel and user mode, system calls, threads, context switches, interrupts, intercrosses communication, coordination of concurrent activities, and the interface between software and hardware. Most importantly, the interactions between these concepts are examined. |
6914 |
Digital Image Processing |
3 |
This course emphasizes general principles of image processing. Topics include image acquisition and display, properties of the human visual system, color representations, sampling and quantization, point operations, linear image filtering, transforms and sub-band decompositions, and nonlinear filtering, contrast and color enhancement, dithering, and image restoration, image registration, and feature extraction and recognition tasks. |
6916 |
Computer Graphics |
3 |
This course covers major aspects of digital image generation: geometric modeling, computer animation, and rendering. The goal of the course is to provide a strong foundation for computer graphics principles, and provide a hands-on introduction to recent advanced topics, e.g., subdivision surfaces, real-time global illumination, and physically based animation. |
6917 |
Machine Learning |
3 |
The course presents the elements of kernel-based methods from a machine learning perspective. It introduces the theoretical basis for studying these methods (theory of positive definite kernels, associated reproducing kernel Hilbert spaces and techniques to construct kernel functions) and present selected topics in this area. This includes learning algorithms such as regularization networks, support vector machines, kernel principal component analysis, kernel canonical correlation analysis, anomaly detection, as well as a discussion of the value of these algorithms for applications. |
6918 |
Distributed Systems |
3 |
The course examines major concepts involved in making distributed systems and applications using a collection of independent communicating systems. Topics include: overview of distributed system, communication, messaging systems and protocols, processes, naming, synchronization, replication and consistency, fault tolerance, distributed file systems, and security issues in distributed computing systems. Research topics in DS will be discussed. |
6919 |
Mobile Autonomous Systems |
3 |
The course is considered as review to the recent trends in the field of mobile robots as intelligent systems, topics include up to date solutions to the fundamental robot problems: localization; planning; perception; robot motion and navigation, dealing with robot sensors and their fusion, reviewing their advantages and limitations and solving problems from probabilistic perspective and from evolutionary perspective. |
6921 |
Security in Computer Networks |
3 |
The course examines major concepts of information systems security, topics includes: definitions, core concepts of Confidentiality, Integrity and Availability (CIA), together with different Authentication, Authorization (Access Control), and Auditing (AAA) tools and techniques. Basic cryptography algorithms and standards will be also covered. An overview of attacks, hacking, viruses, worms & Trojans, DOS-attacks, together with IPS, IDS, Firewalls protections systems will be covered as well. Recent research topics and advances in information security will be considered as well. |
6922 |
Special Topics |
3 |
|
6923 |
Natural Language Processing |
3 |
This course aims at presenting a broad introduction to Natural Language Processing (NLP). The course topics includes performance measures, observed and hidden Markov models, speech recognition, text classification, part of speech tagging, optical character recognition, document clustering, sentiment analysis, language models, syntactic parsing, short answer grading, named entity recognition |
6924 |
Compiler Construction |
3 |
|
6925 |
Wireless Networks |
3 |
|
6927 |
Design and Analysis of Computer Networks |
3 |
|
6928 |
Information Theory |
3 |
|
6929 |
Software Quality Assurance and Measurement |
3 |
|
6930 |
Data mining and Information Retrieval |
3 |
|
6931 |
Service Oriented Architecture and Web Services |
3 |
|
6932 |
Biologically Inspired Intelligent Systems |
3 |
|
6933 |
Multi-Agent Systems |
3 |
|
6934 |
Special Topics in Informatics |
3 |
|
6935 |
Cryptography |
3 |
|
6936 |
Risk Assessment and Privacy Management |
3 |
|
6937 |
Security in Wireless Networks |
3 |
The course illustrates the key concepts of security, wireless networks, and security over wireless networks. It presents some network threats, vulnerabilities and security protocols as countermeasures, common security standards for WLAN like 802.11 WEP, 802.11 WPA and WPA2 (802.11i). Moreover, it explains the concept of WMAN and its security specifications, example of the current proposals in wireless security. Recent research topics and advances in wireless networks security will be considered as well. |
6938 |
Cloud Computing |
3 |
The course covers several topics in cloud computing, including: introduction to cloud concepts, virtualization technologies, architectures, networking, cloud resource management, programming models in clouds, cloud storage systems, and security issues on clouds. |
6939 |
Mobile Computing |
3 |
This course presents different aspects of mobile computing. It shows how mobile devices can work with fixed network computers in building files, database and web client-server systems for achieving the goal of computing in wireless mobile environment anytime and anywhere. Topics include fundamental concepts of mobile computing, various applications and technologies, common paradigms in mobile computing such as low power computing, computing in an environment with limited resources, fault tolerance, persistence, security issues, and current research in mobile computing. |
6940 |
Distributed Databases |
3 |
This course presents different aspects of Distributed Database Management Systems, focusing on techniques, trends and open problems in the area of DS. The course includes the topics: Distributed data storage , Distributed query processing, Distributed transaction model, Concurrency control, Homogeneous and heterogeneous solutions, Client-server distributed databases (cross-reference SF/Computational Paradigms), Middleware Architectures, Mobile Databases, Data Dissemination and Broadcasting. |
6941 |
Bioinformatics and Proteomics |
3 |
This interdisciplinary course provides a hands-on approach to students in the topics of bioinformatics and proteomics. Topics include sequence analysis, microarray expression analysis, Bayesian methods, control theory, scale-free networks, and biotechnology applications. Designed for those with a computational and/or engineering background, it includes current real-world examples, actual implementations, and engineering design issues. Where applicable, engineering issues from signal processing, network theory, machine learning, robotics and other domains will be expounded upon. |
6942 |
Content Management |
3 |
|
6973 |
Data Visualization |
3 |
|